package com.mydemo.dto;

import lombok.Data;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 文件上传请求DTO类
 * <p>
 * 用于封装文件上传和试卷生成的请求参数
 * 使用@Data注解简化POJO类的编写
 * 
 * @author AI助手
 */
@Data
public class FileUploadRequest {

    /**
     * 上传的文件
     * 支持txt、docx、doc格式的文件
     */
    private MultipartFile file;

    /**
     * 包含的题目类型列表
     * 如["single", "multiple", "true_false", "fill_blank", "short_answer"]
     */
    private List<String> questionTypes;

    /**
     * 单选题数量
     */
    private Integer singleChoiceCount;
    
    /**
     * 多选题数量
     */
    private Integer multipleChoiceCount;
    
    /**
     * 判断题数量
     */
    private Integer trueFalseCount;
    
    /**
     * 填空题数量
     */
    private Integer fillBlankCount;
    
    /**
     * 简答题数量
     */
    private Integer shortAnswerCount;

    /**
     * 题目难度
     * 如"简单"、"中等"、"困难"
     */
    private String difficulty;

    /**
     * 生成的试卷标题
     */
    private String title;

    /**
     * 生成的试卷描述
     */
    private String description;
}